<?php
session_start();

ini_set('display_errors', 1);
include_once dirname(__FILE__) . '/../Consultas/HabitacionDao.php';
include_once 'RedirectionController.php';
/*
 * Recibimiento de Parámetros
 * 
 */
 $HabitacionController = new HabitacionController();
if (isset($_POST['tipo_habitacion']) && isset($_POST['id_hotel']) && isset($_POST['servicios_hotel']) && isset($_POST['cantidad_habitaciones'])) {

   
    $HabitacionController->crearHabitacion($_POST['tipo_habitacion'], $_POST['id_hotel'], $_POST['servicios_hotel'], $_POST['cantidad_habitaciones']);
}
else{
    print "Error: Debe diligenciar todos los datos solicitados";
    $HabitacionController->redireccionar();
}

/**
 * Description of HabitacionController
 *
 * @author paolapedraza
 */
class HabitacionController {

    private $HabitacionDao;
    private $RedirectionController;

    public function __construct() {
        $this->HabitacionDao = new HabitacionDao();
        $this->RedirectionController = new RedirectionController();
    }

    public function consultarHabitacion() {


        return $this->HabitacionDao->consultarHabitacion();
    }
    public function redireccionar(){
         $this->RedirectionController->redireccionar(RedirectionController::PAGINA_CREAR_HABITACION);
    }
    public function crearHabitacion($tipoHabitacion, $hotel, $servicios, $cantidadHabitaciones) {

        $arrayValores = Array();
        $correcto = true;
        for ($c = 0; $c < $cantidadHabitaciones; $c++) {
            $arrayValores['tb_tipo_habitacion_id_tb_tipo_habitacion'] = $tipoHabitacion;
            $arrayValores['tb_hotel_id_tb_hotel'] = $hotel;
            
        if ($this->HabitacionDao->crearHabitacion($arrayValores)){
            $ultimoID=$this->HabitacionDao->getUltimoID('tb_habitacion');
           for($x=0;$x<count($servicios);$x++){ 
            if(!$this->crearAsociacionHabitacionServicios($ultimoID, $servicios[$x]))
                    $correcto=false;
                    
           }
        }
        else
           $correcto=false;
        }

        if($correcto)
            print "Todas las habitaciones fueron creadas con éxito";
        else 
            print "Ocurrió un error al guardar las habitaciones";
       $this->redireccionar();
    }
    
    public function crearAsociacionHabitacionServicios($idHabitacion, $idServicio){
        $arrayValores = Array();
        $arrayValores['tb_servcios_hotel_id_tb_servcios_hotel']=$idServicio;
        $arrayValores['tb_habitacion_id_tb_habitacion']=$idHabitacion;
        
        return $this->HabitacionDao->guardarAsociacionHabitacionServicio($arrayValores);
        
    }

}
?>

